18 research outputs found

    Safe and Verifiable Design of Concurrent Java Programs

    Get PDF
    The design of concurrent programs has a reputation for being difficult, and thus potentially dangerous in safetycritical real-time and embedded systems. The recent appearance of Java, whilst cleaning up many insecure aspects of OO programming endemic in C++, suffers from a deceptively simple threads model that is an insecure variant of ideas that are over 25 years old [1]. Consequently, we cannot directly exploit a range of new CASE tools -- based upon modern developments in parallel computing theory -- that can verify and check the design of concurrent systems for a variety of dangers\ud such as deadlock and livelock that otherwise plague us during testing and maintenance and, more seriously, cause catastrophic failure in service. \ud Our approach uses recently developed Java class\ud libraries based on Hoare's Communicating Sequential Processes (CSP); the use of CSP greatly simplifies the design of concurrent systems and, in many cases, a parallel approach often significantly simplifies systems originally approached sequentially. New CSP CASE tools permit designs to be verified against formal specifications\ud and checked for deadlock and livelock. Below we introduce CSP and its implementation in Java and develop a small concurrent application. The formal CSP description of the application is provided, as well as that of an equivalent sequential version. FDR is used to verify the correctness of both implementations, their\ud equivalence, and their freedom from deadlock and livelock

    Magnetic Reversal on Vicinal Surfaces

    Full text link
    We present a theoretical study of in-plane magnetization reversal for vicinal ultrathin films using a one-dimensional micromagnetic model with nearest-neighbor exchange, four-fold anisotropy at all sites, and two-fold anisotropy at step edges. A detailed "phase diagram" is presented that catalogs the possible shapes of hysteresis loops and reversal mechanisms as a function of step anisotropy strength and vicinal terrace length. The steps generically nucleate magnetization reversal and pin the motion of domain walls. No sharp transition separates the cases of reversal by coherent rotation and reversal by depinning of a ninety degree domain wall from the steps. Comparison to experiment is made when appropriate.Comment: 12 pages, 8 figure

    A pluralistic framework for counselling and psychotherapy: Implications for research.

    Get PDF
    Historically, training, research and practice in counselling and psychotherapy have been dominated by unitary theoretical models. Although integrative and eclectic positions have been developed as alternatives, these have not been successful in generating research and have resulted in a further proliferation of competing models. In this paper we introduce a 'pluralistic' framework for counselling and psychotherapy and discuss the implications of this framework for research. The basic principle of this pluralistic framework is that psychological difficulties may have multiple causes and that there is unlikely to be one, 'right' therapeutic method that will be appropriate in all situations - different people are helped by different processes at different times. This pluralistic framework operates as a meta-theory within which it is possible to utilise concepts, strategies and specific interventions from a range of therapeutic orientations. The framework is structured around three domains - goals, task and methods - by which therapeutic processes can be conceptualised, critically examined and empirically investigated. These domains, and the relationships between them, are outlined and the collaborative relationship at the heart of the pluralistic framework is discussed. The pluralistic framework provides a means for empirical research directly to inform practice and potential lines of empirical inquiry are outlined, along with findings from a recent study of counselling in schools
    corecore